package br.uff.mic1.model;

public class Deslocador {
	
	public final static String NAO_DESLOCA = "00";
	public final static String DIREITA = "01"; 
	public final static String ESQUERDA = "10";
	
	public String deslocar(String codigo, String value)
	{
		if (codigo == null)
			throw new IllegalArgumentException("Codigo do deslocador esta null");
		if (codigo.length() != 2)
			throw new IllegalArgumentException("Codigo invalido no deslocador");
		
		if (codigo.equals(Deslocador.DIREITA))
			return "0" + value.substring(0, (value.length() - 1));
		if (codigo.equals(Deslocador.ESQUERDA))
			return value.substring(1, value.length()) + "0";
		if (codigo.equals(Deslocador.NAO_DESLOCA))
			return value;
		
		throw new IllegalArgumentException("Codigo invalido no deslocador");
	}
}
